<!--
 * @Author: LBH 1336709799@qq.com
 * @Date: 2024-11-14 15:23:11
 * @LastEditors: LBH 1336709799@qq.com
 * @LastEditTime: 2024-11-14 17:51:45
 * @FilePath: \用户订单的物流信息\userorder\src\App.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<template>
  <div>
    <div>
      <label for="orderNo">订单号：</label>
      <input id="orderNo" v-model.number="OrderNo"/>
      <button @click="searchBtn">查询</button>
    </div>
    <div class="logistics-info" v-if="isShow">
      <MyGoods :goodInfocur = "orderInfocur.goodInfo">
        <template #desc = "{img}">
          <img :src="img" alt="">
        </template>
      </MyGoods>
      <MyLogistics :orderInfo="orderInfocur"></MyLogistics>
      
    </div>
  </div>
</template>

<script>
import MyGoods from './components/MyGoods.vue'
import MyLogistics from './components/MyLogistics.vue'
export  default{
  components:{
    MyGoods,
    MyLogistics
  },
  data(){
    return{
      OrderNo:'',
      isShow:false,
      orderInfocur:{},
      orderInfo : {
      orderNo: this.currentOrderNo,
      role: 'admin', // 角色 ==> 用于判断是否有查看用户详情的权限
      logisticsStatus: 2, // 0 未发货 1 已发货 2 已签收 3 未签收
      logisticsCompany: '顺丰速运', // 快递公司的名称
      logisticsNo: 'SF123456789', // 快件运单号
      logisticsInfo: [
    {
      time: '2023-02-01 10:00:00', // 时间
      content: '快件已发货' // 快递状态
    },
    {
      time: '2023-02-02 09:00:00',
      content: '快件到达深圳中心'
    },
    {
      time: '2023-02-03 08:00:00',
      content: '快件派送中'
    },
    {
      time: '2023-02-04 16:00:00',
      content: '已签收'
    }
  ],
    goodInfo: { // 商品信息
      goodNo: '12345678912312', // 商品id
      goodName: '三体',// 商品名称
      type: 0, // 0 代表的是文本 1代表的是 图片
      // desc 描述 ==> 可以是图片 也可以是其他的东西。数据可以随便改
      desc: './assets/threebody.jpeg'
       }
     }
    }
  },
  methods:{
    searchBtn(){
      if(typeof this.OrderNo != "number") return alert('请输入数字')
      if(this.orderInfo.goodInfo.goodNo.indexOf(this.OrderNo) !== -1){
        this.OrderNo = ''
        setTimeout(() => {
          this.isShow = true
          this.orderInfocur = this.orderInfo
        },0)
      }
    }
  }
}
</script>
<style scoped>
  .logistics-info {
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: 0px 0px 10px #eee;
    padding: 10px;
    font-size: 14px;
  }

  .logistics-info-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
  }

  .logistics-info-header-left {
    display: flex;
    align-items: center;
  }

  .logistics-status {
    font-weight: bold;
    font-size: 16px;
    color: #007bff;
  }

  .logistics-company,
  .logistics-no {
    margin-left: 10px;
    font-size: 14px;
    color: #333;
  }

  .logistics-info-list {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 230px;
    overflow-y: auto;
  }

  .logistics-info-list li {
    display: flex;
    margin-bottom: 10px;
  }

  .logistics-info-list-time {
    font-size: 12px;
    color: #999;
    width: 80px;
    text-align: right;
    margin-right: 10px;
  }

  .logistics-info-list-content {
    font-size: 14px;
    color: #333;
  }
</style>